~ chicken-core (master) /manual/Included modules
Trap1[[tags: manual]]
2[[toc:]]
3
4== Included modules
5
6The CHICKEN system comes shipped with several modules. This section
7of the manual provides a reference guide to all the modules that are
8part of a standard installation. On top of these, you can install
9additional modules through the [[Extensions|eggs]] system.
10
11Note that toplevel code that is not contained in a module has by
12default all exports of the [[Module scheme|scheme]],
13[[Module (chicken base)|(chicken base)]] and
14[[Module (chicken syntax)|(chicken syntax)]] available.
15
16* [[Module scheme]] : Compatibility module for CHICKEN 5 code
17* [[Module (scheme r4rs)]] : Standard procedures and syntax of R4RS Scheme
18* [[Module (scheme r5rs)]] : Standard procedures and syntax of R5RS Scheme
19* [[Module (scheme base)]] : R7RS evaluation of forms
20* [[Module (scheme case-lambda)]] : R7RS {{case-lambda}} form
21* [[Module (scheme char)]] : R7RS operations on characters
22* [[Module (scheme complex)]] : R7RS operations on complex number
23* [[Module (scheme cxr)]] : R7RS extended {{c..r}} procedures
24* [[Module (scheme file)]] : R7RS file procedures
25* [[Module (scheme eval)]] : R7RS evaluation of forms
26* [[Module (scheme inexact)]] : R7RS operations on inexact numbers
27* [[Module (scheme lazy)]] : R7RS promises and delayed evaluation of forms
28* [[Module (scheme load)]] : R7RS {{load}} procedure
29* [[Module (scheme process-context)]] : R7RS procedures for interacting with the environment
30* [[Module (scheme read)]] : R7RS {{read}} procedure
31* [[Module (scheme repl)]] : R7RS {{interaction-environment}} procedure
32* [[Module (scheme time)]] : R7RS time procedures
33* [[Module (scheme write)]] : R7RS expression printing
34* [[Module (chicken base)]] : Core procedures and macros
35* [[Module (chicken bitwise)]] : Bitwise manipulation on integers
36* [[Module (chicken bytevector)]] : Unstructured byte data
37* [[Module (chicken condition)]] : Raising and handling of exceptions, manipulation of condition objects
38* [[Module (chicken continuation)]] : Feeley's "a better API for continuations"
39* [[Module (chicken csi)]] : Features specific to {{csi}}
40* [[Module (chicken errno)]] : Accessing the C "errno" variable
41* [[Module (chicken eval)]] : Evaluation hooks
42* [[Module (chicken file)]] : High-level API for file system manipulations
43* [[Module (chicken file posix)]] : POSIX-specific file manipulations
44* [[Module (chicken fixnum)]] : Operations on "fixnums" (small integers)
45* [[Module (chicken flonum)]] : Operations on "flonums" (floating-point numbers)
46* [[Module (chicken foreign)]] : Accessing C and C++ code and data
47* [[Module (chicken format)]] : String formatting procedures
48* [[Module (chicken gc)]] : Interacting with the garbage collector
49* [[Module (chicken io)]] : Reading and writing to files and other ports
50* [[Module (chicken irregex)]] : Regular expressions
51* [[Module (chicken keyword)]] : Operations on keyword objects
52* [[Module (chicken load)]] : Loading code from files
53* [[Module (chicken locative)]] : Accessing pointer-like location objects
54* [[Module (chicken memory)]] : Low-level memory operations
55* [[Module (chicken memory representation)]] : Low-level operations on the memory representation of Scheme objects
56* [[Module (chicken module)]] : Defining modules
57* [[Module (chicken number-vector)]] : Homogenous numeric vectors
58* [[Module (chicken pathname)]] : Manipulating path names
59* [[Module (chicken platform)]] : Information about the platform your code is running on
60* [[Module (chicken plist)]] : Symbol property lists
61* [[Module (chicken port)]] : Manipulating port objects
62* [[Module (chicken pretty-print)]] : Pretty-printing s-expressions
63* [[Module (chicken process)]] : Starting subprocesses and communicating with them
64* [[Module (chicken process signal)]] : Sending and receiving POSIX process signals
65* [[Module (chicken process-context)]] : Accessing the context (arguments, environment etc) of the current process
66* [[Module (chicken process-context posix)]] : POSIX-specific context access
67* [[Module (chicken random)]] : Generating pseudo-random number
68* [[Module (chicken read-syntax)]] : Creating syntactic extensions to the reader
69* [[Module (chicken repl)]] : Creating a Read-Eval-Print Loop
70* [[Module (chicken sort)]] : Sorting lists and vectors
71* [[Module (chicken string)]] : String operations
72* [[Module (chicken syntax)]] : Creating syntactic extensions (macros)
73* [[Module (chicken tcp)]] : Connecting over the network via TCP
74* [[Module (chicken time)]] : Fetching information about the current time
75* [[Module (chicken time posix)]] : Manipulating POSIX time
76* [[Module (chicken type)]] : Defining and using static typing information
77* [[Module srfi-4]] : The subset of [[Module (chicken number-vector)]] specified by SRFI-4
78
79In addition to the core modules listed above, the following SRFI modules can be
80imported. These provide access to identifiers described by the SRFI, but which
81may already be defined by other parts of CHICKEN's standard library.
82
83* Module srfi-2 : AND-LET*: an AND with local bindings, a guarded LET* special form
84* Module srfi-8 : receive: Binding to multiple values
85* Module srfi-10 : #, external form
86* Module srfi-12 : Exception Handling
87* Module srfi-15 : Syntax for dynamic scoping
88* Module srfi-16 : Syntax for procedures of variable arity
89* Module srfi-17 : Generalized set!
90* Module srfi-26 : Notation for Specializing Parameters without Currying
91* Module srfi-28 : Basic Format Strings
92* Module srfi-31 : A special form `rec' for recursive evaluation
93* Module srfi-55 : require-extension
94* Module srfi-88 : Keyword objects
95
96Other SRFI features may be supported but do not correspond to any importable module.
97Refer to {{cond-expand}} for a list of non-module SRFI feature identifiers.
98
99---
100Previous: [[Extensions to the standard]]
101
102Next: [[Interface to external functions and variables]]